package com.zmn.oms.common.dio.normal.orderadd;

import com.zmn.oms.common.dio.normal.serviceitem.OrderServiceItemDIO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 类描述：产品信息
 *
 * @author wangxiaokun
 * @since 2021/04/01 11:55
 */
@Data
@ToString
@ApiModel("产品信息")
public class OrderProductDIO implements Serializable {

    private static final long serialVersionUID = 8482463452471255033L;

    /**
     * 品牌id
     */
    @ApiModelProperty(value = "品牌", required = true)
    private Integer brandId;

    /**
     * 产品id
     */
    @ApiModelProperty(value = "后台产品")
    private Integer productId;

    @ApiModelProperty("价格表id")
    private Integer tariffId;

    /**
     * 前端产品id
     */
    @ApiModelProperty(value = "前端产品", required = true)
    private Integer showProductId;

    /**
     * 数量
     */
    @ApiModelProperty(value = "产品数量", required = true)
    @NotNull(message = "产品数量不能为空")
    private Integer number;

    /**
     * 故障数据
     */
    @ApiModelProperty(value = "故障数据")
    private List<Integer> faultIdList;

    /**
     * 故障备注
     */
    @ApiModelProperty(value = "故障备注")
    @Size(max = 5000, message = "其它故障最多5000个字符")
    private String remark;

    /**
     * 产品服务项
     */
    @ApiModelProperty("订单服务项")
    private List<OrderServiceItemDIO> orderServiceItemList;

    /**
     * 提前报价相关参数
     */
    @ApiModelProperty(value = "提前报价相关参数")
    private OrderAdvanceQuoteDIO advanceQuote;
}
